Aspect-Oriented Refactoring: Classification and Challenges
نویسنده
چکیده
This paper provides an overview of the three different kinds of AOP refactorings: aspect-aware OO refactorings, refactorings for AOP constructs, and refactorings of crosscutting concerns. We discuss recent developments for each of them and highlight their commonalities with respect to associated challenges and ties to related research, such as program analysis and aspect mining.
منابع مشابه
Refactoring JHOTDRAW’s Undo concern to ASPECTJ
In this paper we discuss an approach to the aspect-oriented refactoring of the Undo concern in an open-source Java system. A number of challenges and considerations of the proposed solution are analyzed for providing useful feedback about how the employed aspect language could better support the refactoring to aspects. We also consider the unpluggability property of a concern as an estimate of ...
متن کاملClassification of Scattered Code in Object-Oriented Applications
Aspect-oriented programming strives to encapsulate crosscutting concerns into modular units called aspects. Aspect Mining techniques aim to search for aspect candidates in existing software systems. These techniques associate all occurrences of scattered code in existing applications with the absence of aspects. In this paper, we demonstrate that in a poorly designed object-oriented system, sca...
متن کاملRefactoring of Crosscutting Concerns with Metaphor-Based Heuristics
It has been advocated that Aspect-Oriented Programming (AOP) is an effective technique to improve software maintainability through explicit support for modularising crosscutting concerns. However, in order to take the advantages of AOP, there is a need for supporting the systematic refactoring of crosscutting concerns to aspects. Existing techniques for aspect-oriented refactoring are too fine-...
متن کاملRefactoring Idiomatic Exception Handling in C++: Throwing and Catching Exceptions with Aspects
Aspect-oriented programming can be used to modularize crosscutting concerns to improve the maintainability of large systems. Exceptions cross-cut legacy applications and are often implemented in idioms which cannot be globally enforced. We describe an aspect-oriented approach for throwing exceptions in place of the “return code idiom”, and discuss using aspects to handle those exceptions in a m...
متن کاملRefactoring Aspect-Oriented Programs
Refactoring is the process of changing a program to improve its internal structure and reusability, without altering the external behavior of the program. It is a disciplined way to clean up code that minimizes the chances of introducing bugs. In this paper, we propose a systemic approach to refactoring aspect-oriented programs. To this end, we rst investigate the impact of existing object-orie...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2006